package com.aqiang.day0528_shop.main.contract

import com.aqiang.day0528_shop.main.entity.BaseEntity
import com.aqiang.day0528_shop.main.entity.GoodsTypeEntity
import com.aqiang.day0528_shop.main.entity.SpikeGoodsEntity
import com.aqiang.lib_core.mvp.BasePresenter
import com.aqiang.lib_core.mvp.IModel
import com.aqiang.lib_core.mvp.IView
import com.zy.shopproject2.usercenter.entity.BaseResponseEntity
import kotlinx.coroutines.Deferred

interface GoodsTypeContract {
    interface GoodsTypeView :IView{
        fun initAdapte(goods:Deferred<BaseEntity<List<GoodsTypeEntity>>>)
        fun getStartTime():String
        fun spike(spike:Deferred<BaseEntity<List<SpikeGoodsEntity>>>)
    }

    interface GoodsTypeModel :IModel{
        fun getGoodsType():Deferred<BaseEntity<List<GoodsTypeEntity>>>
        fun getSpikeGodds(startTime:String):Deferred<BaseEntity<List<SpikeGoodsEntity>>>
    }

    abstract class GoodsTypePresenter(v:GoodsTypeView) : BasePresenter<GoodsTypeModel,GoodsTypeView>(v){
        abstract fun getGoodsType()
        abstract fun getSpikeGodds()
    }
}